package com.yuw.control.userinfo;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.yuw.bean.UserInfoBean;
import com.yuw.model.UserInfoModel;
import com.yuw.utils.EasyFactory;
import com.yuw.utils.MyUtils;

@WebServlet("/UserInfoSavingControl")
public class UserInfoSavingControl extends HttpServlet {
	private static final long serialVersionUID = 1L;

	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// 将request中的form表单中的数据转换到实体类中
		UserInfoBean userInfoB = MyUtils.convertRequest2BeanWithFileUpload(request, UserInfoBean.class);
		// 调用Model层进行用户信息保存的业务逻辑处理
		int i = EasyFactory.getNewInstance(UserInfoModel.class).saveOrUpdateUserInfo(userInfoB);
		
		// 根据业务逻辑处理结果，进行结果页面的转发处理
		if(i >0) {
			// 新增成功
			// 跳转到新增成功页面，需要实现所有的数据信息，调用model层的查询操作，获取所有的数据结果集
			List<UserInfoBean> lst = EasyFactory.getNewInstance(UserInfoModel.class).queryAllUserInfo();
			// 将查询的结果集缓存到session对象中
			request.getSession().setAttribute("lstUserInfos", lst);
			// 转发到查询成功页面
			request.getRequestDispatcher("WEB-INF/pages/userInfo/UserInfoAddDetail.jsp").forward(request, response);
		}else {
			// 新增失败
		}
	}
}
